const express = require('express');
const bcrypt = require('bcryptjs');
const Student = require('../models/StudentLogin'); // 引入正确的模型

const router = express.Router();

// 学生登录
router.post('/studentLogin', async (req, res) => {
  try {
    const { student_no, password } = req.body;

    // 校验用户名和密码是否为空
    if (!student_no || !password) {
      return res.status(400).json({ success: false, message: '请输入学号和密码' });
    }

    // 查找学生信息
    const student = await Student.findOne({ where: { student_no } });

    // 如果学号不存在
    if (!student) {
      return res.status(401).json({ success: false, message: '学号不存在' });
    }

    // 使用 bcrypt 比较密码
    const isMatch = await bcrypt.compare(password, student.password);
    if (!isMatch) {
      return res.status(401).json({ success: false, message: '密码错误' });
    }

    // 登录成功，返回学生信息
    res.json({
      success: true,
      message: '登录成功',
      data: { id: student.id, student_no: student.student_no, name: student.name, points: student.points }
    });

  } catch (error) {
    console.error('学生登录错误:', error);
    res.status(500).json({ success: false, message: '服务器错误' });
  }
});

module.exports = router;
